<!DOCTYPE html>
<html lang="zh_CN">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
<script type="text/javascript">

    /**
     * 使用函数的方式去定义一个对象的模板，可以通过这个对象的模板，使用 new 关键字创建对象。这个对象的模板我们叫做 构造函数，也可以叫做类
     *
     *
     * 注意事项：
     * 1. 构造函数首字母大写
     * 2. 构造函数创建对象我们要使用new关键字，通过new得到对象的过程一般我们称之为对象的实例化
     * @param name
     * @param age
     * @constructor
     */
    function People(name, age) {

        /*在构造函数的内部可以使用 this 关键字定义属性和方法*/
        this.username = name;
        this.age = age;

        /*方法定义*/
        this.say = function () {
            console.log('my name is ' + this.name);
        }

    }

    var p1 = new People('mark', 23); // 对象的实例化
    var p2 = new People('andy', 33); // 对象的实例化
    console.log(p1);
    console.log(p2);
    console.log(p1.username);
    p1.say();


</script>

</html>
